Cloud computing involves the use of computing resources (hardware and software) that are delivered as a service over a network (typically the Internet). One type of cloud computing service is referred to as Platform as a Service (PaaS). In the PaaS model, the consumer creates software using tools and/or libraries from the provider. The consumer also controls software deployment and configuration settings. The provider provides the networks, servers, storage and other services.
PaaS offerings facilitate the deployment of applications without requiring the users to incur the cost and complexity of buying and managing the underlying hardware and software, and provisioning hosting capabilities. PaaS offerings may include, for example, facilities for application hosting, application design, application development, application testing, team collaboration, web service integration and marshalling, database integration, security, scalability, storage, persistence, state management, application versioning, application instrumentation and developer community facilitation. These services are generally provisioned as an integrated solution over the web.
Users of PaaS environments generally need to create systems that include multiple instances of cloud-based resources (“resource instances”). For the environments to work as intended, the resource instances must be configured properly. Typically, this includes setting configurations so that resource instances know of and can reference attributes of other resource instances.
One known approach for creating/configuring resource instances involves providing a set of commands to perform individual operations to create the resource instances and to manipulate their configuration. The commands may be submitted by a user either via a graphical user interface or a command-line interface. When using this technique, the user must determine the appropriate order of creation, and monitor the creation processes. Typically, values generated during the creation of some resource instances must be provided as input when creating other resource instances.
As the complexity of a user's system increases, so does the difficulty of creating and configuring the resource instances the system requires. Thus, it is desirable to provide tools that facilitate resource instance creation, configuration and debugging, within cloud computing environments.
The approaches described in this section are approaches that could be pursued, but not necessarily approaches that have been previously conceived or pursued. Therefore, unless otherwise indicated, it should not be assumed that any of the approaches described in this section qualify as prior art merely by virtue of their inclusion in this section.